export default {
  data() {
    return {
      // 查询参数
      queryinfo: {
        queryString: '',
        pageNo: 1,
        pageSize: 10
      },
      // 商品列表数据，默认为空
      goodslist: [],
      // 总数据条数
      total: 0
    }
  },
  created() {
    this.getGoodsList()
  },
  methods: {
    searchGoodList() {
      this.queryinfo.pageNo = 1;
      this.getGoodsList();
    },
    // 根据查询参数获取商品列表
    async getGoodsList() {
      // let params={
      //   "pageNo": this.queryinfo.pagenum,
      //   "pageSize": this.queryinfo.pagesize
      // }
      const { data: res } = await this.$http.post('/shop/productList', this.queryinfo)//, { params: this.queryinfo }

      console.log(res);
      this.goodslist = res.data.list;
      this.total = res.data.total
      // const { data: res } = await this.$http.get('goods', { params: this.queryinfo })

      // if (res.meta.status !== 200) return this.$message.error('获取商品列表失败！')
      // this.goodslist = res.data.goods
      // this.total = res.data.total
      // console.log(res)
    },
    // 监听 pageSize 的变化，并立即获取最新的数据
    handleSizeChange(newSize) {
      this.queryinfo.pageSize = newSize
      this.getGoodsList()
    },
    // 监听 pageNum 的变化，并立即获取最新的数据
    handleCurrentChange(newPage) {
      this.queryinfo.pageNo = newPage
      this.getGoodsList()
    },
    // 根据商品Id，删除商品数据
    remove(scope) {
      if (scope.row.status != 0) {
        let msg = scope.row.status == 1 ? '下架' : '上架'
        let status = scope.row.status == 1 ? 2 : 1;
        this.$confirm('是否' + msg + '商品？', '提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning'
        }).then(() => {
          this.$http.post('/shop/downProduct', { queryId: scope.row.id, queryType: status }).then((res) => {
            if (res.data.status == 1) {
              this.getGoodsList()
              this.$message.success(msg + '成功')
            } else {
              this.$message.error(res.data.message)
            }
          })

          // console.log(res);
          // if (res.status == 1){
          //   this.$message.success('删除商品成功！')
          // }else{
          //   this.$message.error('删除商品失败！')
          // }
          //   this.$message({
          //     type: 'success',
          //     message: '删除成功!'
          //   });
          // }).catch(() => {
          //   this.$message({
          //     type: 'info',
          //     message: '已取消删除'
          //   });          
          // });
          // const confirmResult = await this.$confirm('此操作将删除该商品, 是否继续?', '提示', {
          //   confirmButtonText: '确定',
          //   cancelButtonText: '取消',
          //   type: 'warning'
          // }).catch(err => err)

          // // 用户取消了删除
          // if (confirmResult !== 'confirm') {
          //   return this.$message({
          //     type: 'info',
          //     message: '已取消删除'
          //   })
          // }

          // 用户确认了删除
          // const { data: res } = await this.$http.post('/manage/mall/upDownProduct',{queryId: scope.row.id,queryType:0})
          // console.log(res);
          // if (res.status == 1){
          //   this.$message.success('删除商品成功！')
          // }else{
          //   this.$message.error('删除商品失败！')
          // }


        })
      }
      },
      // 跳转到添加页面
      goAdd() {
        this.$router.push('/goods/add')
      },
      // 跳转到修改页面
      goEdit(edit) {

        console.log(edit);

        //this.$router.push('/goods/edit')
        this.$router.push({
          path: '/goods/edit',
          query: {
            params: edit.row
          }
        })
      }

    },
    // 过滤器
    filters: {
      // 格式化时间的过滤器
      /* dateFormat(originVal) {
        const dt = new Date(originVal)
        const y = dt.getFullYear()
        const m = (dt.getMonth() + 1).toString().padStart(2, '0')
        const d = dt
          .getDate()
          .toString()
          .padStart(2, '0')
  
        const hh = dt
          .getHours()
          .toString()
          .padStart(2, '0')
        const mm = dt
          .getMinutes()
          .toString()
          .padStart(2, '0')
        const ss = dt
          .getSeconds()
          .toString()
          .padStart(2, '0')
  
        return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
      } */
    }
  }
